#ifndef OCK_MEMORY_BRIDGE_HMO_MEMORY_LOCATION_H
#define OCK_MEMORY_BRIDGE_HMO_MEMORY_LOCATION_H
#include <cstdint>
#include <ostream>
namespace ock {
namespace hmm {
enum class OckHmmHeteroMemoryLocation : uint32_t
{
    LOCAL_HOST_MEMORY = 0;
    DEVICE_HBM = 1,
    DEVIVE_DDR = 2,
};

enum class OckHmmMemoryAlloctePolicy : uint32_t { DEVICE_DDR_FIRST = 0; DEVICE_DDR_ONLY = 1; LOCAL_HOST_ONLY = 2};

std::ostream &operator<<(std::ostream &os, OckHmmHeteroMemoryLocation location);
std::ostream &operator<<(std::ostream &os, OckHmmMemoryAlloctePolicy location);

}
}
#endif